package com.dm.decorator.demo01;

public class Client {
	public static void main(String[] args) {
		/**
		 * 在原文中有这么一句话：
		 * 	这个模式最重要的方面就是，装饰者们可以出现在任何VisualComponent能出现的地方。
		 * 	这意味着客户端不知道有装饰者的组件和无装饰者组件的区别，也就不依赖任何装饰者。
		 * 
		 * 如果把 ScrollDecorator改名为 ScrollView 那么其实是看不出和TextView的区别，
		 * 他们的父类都是VisualComponent
		 */
		VisualComponent textView = new TextView();
		VisualComponent scrollDecorator = new ScrollDecorator(textView);
		VisualComponent borderDecorator = new BorderDecorator(scrollDecorator,30);
		
		borderDecorator.draw();
	}
}
